cf - character format


Abgeleitet von esc-Sequenzen für Drucker ist eine Art Script-Sprache entstanden.
Sie spart sich den Format Layer, glänzt aber nicht durch Übersichtlichkeit. Genau so wie bei Html.


esc-Sequenz eine
Abfolge von einzelnen Zeichen, eingeleitet vom esc-Zeichen (char27),
das dem Drucker klar macht, dass jetzt eine Steuersequenz folgt.



c(   c für char
]    tabs
{    1D Barcodes {B.., Prüfziffer Esr {p.., Iban/QrIban {n.., drawlist index {d..

leiten die Steuer-Sequenz ein


sample: tabs
  ]c(12)TEXTA c(R) 1000c(20)]
  ]c(12)TEXTB c(R) 1c(20)]
result:
  TEXTA  1000
  TEXTB     1


sample: change fontname to Arial
c(Fn)A

sample: to Verdana size9, back to Courier size10
c(Fn).Verdana.c(Fs)c(9) TEXT c(Fn)Cc(Fs)c(10)


sample: set Size12 • back to Size10
c(Fs)c(12) TEXT c(Fs)c(10)


Drawing line, rectangle, picture


in Layout define {dIndex} starting with 0, 
sample: {d0} (drawlist index 0)
in Drawlist define:
line     : x,y,width(in tabs),boldness  +10 white line (to cover)
rectangle: x,y,width(in tabs, 0=vert.line),heigth(px),boldness
picture : x,y,width(in tabs),heigth(px),path+filename of picture

Barcodes


  • 1D: {b value_field, left in_tabs, height, width}


  • 1D: {B value_field, left in_tabs, height, width, bottomOut}


  • Esr Prüfziffer {p}

    12345678{p08b}   len = 8   b = Block 5 Darstellung (depricated)


    Iban/QrIban {n}

    CH5800791123000889012(len 21) -> CH58 0079 1123 0008 8901 2{n21b}


    len = 21   b = Block 4 Darstellung


    Bemerkung

    line {: remark 


    Felder

    ?:<TEXT1>\<TEXT2>


    Kopie
    C:  O R I G I N A L  \c(B)K O P I Ec()
    Seite mod 2 = 1 then 1. Teil else 2. Teil
    Seite1 = Original
    Seite2 = Kopie
    Seite3 = Original
    usf.

    Last only
    L:Report  Fr.\ TOTAL Fr.
    1..n-1 = Report
    n = Total

    ab 2. Seite
    2:Seite1\Seite2 und ff.
    1   = Seite1
    2..n= Seite2 und ff.


    Funktionen


    Syntax Textfeld
    "(1) if Datenfeld NICHT LEER\(2) else Datenfeld LEER[< TextEnd][nn+]" {nn= max 60 blanks}

    ohne Längendeklaration
    Textfeld "Rabatt -%\  "   Lücke für Daten
    Datenfeld ='12' Textfeld "Rabatt -12%" (1)
    Datenfeld ='' Textfeld "           " (2)
    da keine Längendeklaration ist Text (1) und (2) gleich lang

    mit Längendeklaration
    Textfeld "Rabatt -**%\kein Rabatt         <" 
    Datenfeld ='12' Textfeld "Rabatt -12%"   (1)
    Datenfeld ='' Textfeld "kein Rabatt         "  (2)

    mit Längendeklaration +zusätzlichen 19 blanks
    Textfeld "Rabatt -**%\kein Rabatt<19+"  
    Datenfeld ='12' Textfeld "Rabatt -12%"   (1)
    Datenfeld ='' Textfeld "kein Rabatt                   " (2)


    Extras

    Ausgabe auf Textfile
    Um die Zeilenlänge 120 zu überschreiten: am Ende der Zeile {->txt}

    27. Februar 2017 - 1. Veröffentlichung 1991 - genaueres Datum müsste auf Folien stehen
    © bmz 1989-2026